import pandas as pd
import os
from openpyxl import load_workbook

def merge_excel_files(file1, file2, output_file):
    # 读取两个Excel文件
    print(f"读取文件: {file1}")
    df1 = pd.read_excel(file1, header=1)  # 表头在第二行，所以header=1
    
    print(f"读取文件: {file2}")
    df2 = pd.read_excel(file2, header=1)  # 表头在第二行，所以header=1
    
    # 合并数据框
    print(f"合并数据，第一个文件有 {len(df1)} 行，第二个文件有 {len(df2)} 行")
    merged_df = pd.concat([df1, df2], ignore_index=True)
    
    # 保存合并后的数据到新的Excel文件
    print(f"保存合并后的数据到 {output_file}")
    merged_df.to_excel(output_file, index=False, startrow=0)  # 从第二行开始写入，表头在第二行
    
    # 为了在第一行添加空行，我们需要打开已保存的文件并修改
    book = load_workbook(output_file)
    sheet = book.active
    
    # 插入一个空行作为第一行
    # sheet.insert_rows(1)
    
    # 保存修改后的文件
    book.save(output_file)
    
    print(f"合并完成！总共 {len(merged_df)} 行数据已保存到 {output_file}")

# 主函数
def main():
    # 设置文件路径
    current_dir = os.path.dirname(os.path.abspath(__file__))
    file1 = os.path.join(current_dir, "NW2025.1.1-3.31全部.xlsx")
    file2 = os.path.join(current_dir, "NW2025.1.1-3.31已存档.xlsx")
    output_file = os.path.join(current_dir, "NW2025合并结果.xlsx")
    
    # 执行合并
    merge_excel_files(file1, file2, output_file)

if __name__ == "__main__":
    main()